package com.hongpu.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * 菜单树结构实体类
 * 用于：新增角色时用到的菜单下拉列表树，编辑角色时用到的菜单下拉列表树
 * @author 张玉胜
 * @since 2025年06月05日
 */
@Data
public class MenuTreeVo implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 菜单ID
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long menuId;
    /**
     * 父菜单ID
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long parentId;
    /**
     * 菜单名称
     */
    private String menuName;
    /**
     * 权限标识
     */
    private String perms;

    /**
     * 当前菜单是否配置了与角色的对应关系
     */
    private boolean checked = false;
    /**
     * 子菜单
     */
    private List<MenuTreeVo> children;

}